/*
 * @Author: ylq
 * @Date: 2022-09-20 16:24:20
 * @Desc: user Store
 * @Last Modified by: ylq
 * @Last Modified time: 2023-11-22 14:10:23
 */
import { defineStore } from 'pinia';
import { clearToken } from '@/utils/auth';
import { userService } from '@/api/';

const useUserStore = defineStore('user', {
  state: () => ({
    userInfo: undefined
  }),

  actions: {
    async getUserinfo() {
      //   const res = await userService.getUserInfo();
      //   if (!res.error) {
      //     // const roles = ['admin', 'leads-list', 'set-depart', 'set-roles', 'set-leads']
      //     const o = { ...res.result, roles: res?.result?.resources?.length ? res?.result?.resources : ['home'] };
      //     // const o = { ...res.result, roles: [] };
      //     // 开发环境
      //     if (import.meta.env?.MODE === 'dev') {
      //       o.roles = o.roles.concat('test');
      //       // , 'leads-sea', 'client-manage', 'client-sea'
      //       // o.roles = o.roles.concat('dashboard', 'test', 'chatgpt-manage');
      //       // // 增加日历模块相关权限
      //       // o.roles = o.roles.concat('calendar', 'calendar-manage');
      //       // // 增加线索模块相关权限
      //       // o.roles = o.roles.concat('leads', 'leads-list', 'leads-sea');
      //       // // 增加chatgpt模块相关权限
      //       // o.roles = o.roles.concat('chatgpt', 'chatgpt-manage', 'setting-org-depart', 'set-leads', 'set-call');
      //       // // 增加设置模块相关权限
      //       o.roles = o.roles.concat('setting', 'setting-org', 'setting-org-roles', 'setting-obj', 'setting-obj-system', 'setting-obj-global');

      //       // // 增加数据分析模块相关权限 'data-analysis-leads',
      //       // o.roles = o.roles.concat('data-analysis', 'data-analysis-leads-index', 'data-analysis-leads-portrait', 'data-analysis-leads-top');
      //     }
      //     // test环境 把一些前端的组件放出来
      //     // if (import.meta.env?.MODE === 'test') {
      //     //   o.roles = o.roles.concat('test');
      //     // }
      //     // 判断是否有chatgpt 如果没有的话，加上这个权限
      //     // if (o.roles.indexOf('chatgpt') === -1) {
      //     //   o.roles = o.roles.concat('chatgpt');
      //     // }
      //     if (o.roles.indexOf('home') === -1) {
      //       o.roles = o.roles.concat('home');
      //     }
      //     // 默认加销售列表权限
      //     // if (o.roles.indexOf('leads-list') === -1) {
      //     //   o.roles = o.roles.concat('leads-list');
      //     // }
      //     // // 这里是销售线索默认的一些操作权限
      //     // o.roles = o.roles.concat('001001001', '001001002', '001001003', '001001004', '001001005', '001001006', '001001007', '001001008', '001001010');
      //     // 日程
      //     // if (o.roles.indexOf('calendar') === -1) {
      //     //   o.roles = o.roles.concat('calendar');
      //     // }
      //     // 判断权限是否只是自己
      //     const isAll = o.permission?.some((el) => el === 1 || el === 3 || el === 0);
      //     o.isAll = isAll;
      //     this.userInfo = o;
      //   } else {
      //     console.log(28, res);
      //   }
      this.userInfo = { isAll: true, roles: ['home', 'detail'] };
    },
    // 退出
    async logout() {
      clearToken();
      await userService.logout();
      this.$reset();
    }
  }
});

export default useUserStore;
